home *** CD-ROM | disk | FTP | other *** search
- # Source Generated with Decompyle++
- # File: in.pyc (Python 2.6)
-
- import logging
- import gettext as mygettext
-
- def _verify(message, translated):
- '''
- helper that verifies that the message and the translated
- message have the same number (and type) of % args
- '''
- arguments_in_message = message.count('%') - message.count('\\%')
- arguments_in_translation = translated.count('%') - translated.count('\\%')
- return arguments_in_message == arguments_in_translation
-
-
- def gettext(message):
- '''
- version of gettext that logs errors but does not crash on incorrect
- number of arguments
- '''
- if message == '':
- return ''
- translated_msg = mygettext.gettext(message)
- if not _verify(message, translated_msg):
- logging.error("incorrect translation for message '%s' to '%s' (wrong number of arguments)" % (message, translated_msg))
- return message
- return translated_msg
-
-
- def ngettext(msgid1, msgid2, n):
- '''
- version of ngettext that logs errors but does not crash on incorrect
- number of arguments
- '''
- translated_msg = mygettext.ngettext(msgid1, msgid2, n)
- if not _verify(msgid1, translated_msg):
- logging.error("incorrect translation for ngettext message '%s' plural: '%s' to '%s' (wrong number of arguments)" % (msgid1, msgid2, translated_msg))
- if n == 1:
- return msgid1
- return msgid2
- return translated_msg
-
-